package net.oschina.app;

import net.oschina.app.Page.PageCommon;
import net.oschina.app.Page.PageHome;
import net.oschina.app.Page.PageLogOut;
import net.oschina.app.Page.PageLogin;
import net.oschina.app.Page.PageMyLogin;
import net.oschina.app.Page.PageMyUnlogin;
import net.oschina.app.Page.PageNewDetails;

/**
 * Created by kola on 2017/3/24.
 * 管理page类抽取
 */

public class Helper {
    PageCommon pageCommon;
    PageLogin pageLogin;
    PageLogOut pageLogOut;
    PageMyLogin pageMyLogin;
    PageMyUnlogin pageMyUnlogin;
    PageHome pageHome;
    PageNewDetails pageNewDetails;
    private SoloWrap solo;

    public Helper(SoloWrap solo) {
        this.solo = solo;

    }

    public PageCommon getPageCommon() {
//        第一次为空，故需要创建对象，但是后续就不需要了
        if (pageCommon == null) {
            pageCommon = new PageCommon(solo);
        }
        pageCommon.initViews();
        return pageCommon;
    }

    public PageMyLogin getPageMyLogin() {
        if (pageMyLogin == null) {
            pageMyLogin = new PageMyLogin(solo);
        }
        pageMyLogin.initViews();
        return pageMyLogin;
    }

    public PageMyUnlogin getPageMyUnLogin() {
        if (pageMyUnlogin == null) {
            pageMyUnlogin = new PageMyUnlogin(solo);
        }
        pageMyUnlogin.initViews();
        return pageMyUnlogin;
    }

    public PageLogin getPageLogin() {
        if (pageLogin == null) {
            pageLogin = new PageLogin(solo);
        }
        pageLogin.initViews();
        return pageLogin;
    }

    public PageLogOut getPageLogOut() {
        if (pageLogOut == null) {
            pageLogOut = new PageLogOut(solo);
        }
        pageLogOut.initViews();
        return pageLogOut;
    }

    public PageHome getPageHome() {
        if (pageHome == null) {
            pageHome = new PageHome(solo);
        }
        pageHome.initViews();
        return pageHome;

    }

    public PageNewDetails getPageNewDetails() {
        if (pageNewDetails == null) {
            pageNewDetails = new PageNewDetails(solo);
        }
//        pageNewDetails.initViews();
        return pageNewDetails;
    }
}
